package com.hs.room.mapper

import com.hs.common.dto.SysDeptDto
import com.hs.common.dto.SysRoleDto
import com.hs.common.dto.SysUserDto
import com.hs.room.model.sys.SysDept
import com.hs.room.model.sys.SysRole
import com.hs.room.model.sys.SysUser
import org.mapstruct.Mapper
import org.mapstruct.factory.Mappers

@Mapper
interface DeptMapper {

    // 映射单个 User 到 UserDTO
    fun deptToDeptDTO(sysDept: SysDept ): SysDeptDto

    fun deptDtoToDept(sysDeptDto: SysDeptDto): SysDept

    // 映射 List<User> 到 List<UserDTO>
    fun deptListToDeptDTOs(deptList: List<SysDept>): List<SysDeptDto>

    // 获取 Mapper 实例
    companion object {
        val INSTANCE: DeptMapper = Mappers.getMapper(DeptMapper::class.java)
    }

}